((Detailed and complexd))